<!DOCTYPE html>
<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset={$charset}" />
        <title>会员管理</title>
        {''|getCommon} 
		{'easyui'|getPlugSingle}
		{'ztree'|getPlugSingle}
		{'uploadify'|getPlugSingle}
	</head>
    <body>
    	<script type="text/javascript">
	    	{literal}
	    	$.extend($.fn.validatebox.defaults.rules, {
	    	    /*必须为正整数*/
	    	    validataPInteger: {
	    	        validator:function(value){
	    	        	var r = /^[-+]?\d*$/;
	    	        	if(r.test(value) && value>0)
	    	        		return true;
	    	        	else 
	    	        		return false;
	    	        },
	    	        message:'请输入正整数'
	    	    }
	    	});
	    	{/literal}
    	</script>
    	<style>
    		{literal}
    			.uploadAvaterBtn{border:1px solid #ddd;height:20px;}
    			#showPhoto{width:100px;height:100px;margin-top:5px;display:table-cell;text-align:center;vertical-align:middle;}
    			#showUpdateUserPhoto{width:100px;height:100px;margin-top:5px;display:table-cell;text-align:center;vertical-align:middle;}
    		{/literal}
    	</style>
		<div id="updateUserPwd" class="easyui-dialog" title="修改用户密码" closed="true" style="width:260px;height:170px;padding:10px"
    	data-options="
				iconCls: 'icon-add',
				buttons: [{
					text:'确认',
					iconCls:'icon-ok',
					handler:function(){
						$('#updateUserPwdForm').form('submit', {
							url : 'updateUserInfo',
							onSubmit : function() {
								return $(this).form('validate');//对数据进行格式化
							},
							success : function(data) {
								eval('var dataJson='+data);
								if(dataJson.result==true){
									$.messager.show({
										title : '提示',
										msg :'您已成功修改该用户密码!'
									});
									$('#updateUserPwd').dialog('close');
								}else{
									$.messager.show({
										title : '提示',
										msg :'修改失败请重试！'
									});
								}
							}
						});
					}
				},{
					text:'取消',
					handler:function(){
						$('#updateUserPwd').dialog('close');
					}
				}],
				onResize:function(){
					$(this).dialog('center');
				}
			">
			<form id="updateUserPwdForm" method="post">
		    	<table cellpadding="5">
		    		<tr>
		    			<td>输入密码:</td>
		    			<td><input type="hidden" name="userId"/><input id="password2" class="easyui-textbox" type="password" name="userPwd" data-options="required:true,validType:'length[6,20]'"></input></td>
		    		</tr>
		    		<tr>
		    			<td>确认密码:</td>
		    			<td><input id="repassword2" class="easyui-textbox" type="password" name="subject" data-options="required:true" validType="equalTo['#password2']" invalidMessage="两次输入密码不匹配"></input></td>
		    		</tr>
		    	</table>
		    </form>
		</div>
		
		<div id="userRecharge" class="easyui-dialog" title="用户充值" closed="true" style="width:260px;height:170px;padding:10px"
    	data-options="
				iconCls: 'icon-add',
				buttons: [{
					text:'确认',
					iconCls:'icon-ok',
					handler:function(){
						$('#userRechargeForm').form('submit', {
							url : 'userRechange',
							onSubmit : function() {
								return $(this).form('validate');//对数据进行格式化
							},
							success : function(data) {
								eval('var dataJson='+data);
								if(dataJson.result==true){
									$.messager.show({
										title : '提示',
										msg :'您已充值成功!'
									});
									$('#userRecharge').dialog('close');
									window.location.reload();
								}else{
									$.messager.show({
										title : '提示',
										msg :'充值失败请重试！'
									});
								}
							}
						});
					}
				},{
					text:'取消',
					handler:function(){
						$('#userRecharge').dialog('close');
					}
				}],
				onResize:function(){
					$(this).dialog('center');
				}
			">
			<form id="userRechargeForm" method="post">
		    	<table cellpadding="5">
		    		<tr>
		    			<td>输入充值金额:</td>
		    			<td><input type="hidden" name="userId"/><input class="easyui-textbox" type="text" id="rechangeGold" name="rechangeGold" data-options="required:true" invalidMessage="请输入正整数" validType="validataPInteger['#rechangeGold']"></input></td>
		    		</tr>
		    	</table>
		    </form>
		</div>
        <table id="userTable" title="会员管理" style="width:100%;"
				data-options="rownumbers:true,singleSelect:true,pagination:true,url:'queryUserInfo',method:'post',toolbar:'#userTableTool',multiSort:false">
			<thead>
				<tr>
					<th data-options="field:'userLoginId',formatter:combLogin" width="12%">登录帐号</th>
					<th data-options="field:'userPhone'" width="8%">手机号码</th>
					<th data-options="field:'userTel',align:'left'" width="8%">电话号码</th>
					<th data-options="field:'userSex',align:'left',formatter:readSex" width="5%">性别</th>
					<th data-options="field:'userCreateTime',align:'left',sortable:true" width="10%">注册时间</th>
					<th data-options="field:'userGold',align:'left'" width="8%">野猪币数量</th>
					<th data-options="field:'userRecom1LoginId',align:'left'" width="8%">一级推荐人</th>
					<th data-options="field:'userRecom2LoginId',align:'left'" width="8%">二级推荐人</th>
					<th data-options="field:'userRecom3LoginId',align:'left'" width="8%">三级推荐人</th>
					<th data-options="field:'userState',align:'left',formatter:formatState" width="6%">当前状态</th>
					<th data-options="field:'_op',align:'left',formatter:rowOp" width="18%">操作</th>
				</tr>
			</thead>
		</table>
		<div id="userTableTool" style="padding:5px;height:auto">
			<div style="margin-bottom:5px">
				<a href="#" class="easyui-linkbutton" iconCls="icon-reload" plain="true" onclick="javascript:window.location.reload()">刷新</a>
			</div>
			<div>
				<form id="queryTableInfo" method="post">
					登录帐号: <input class="easyui-textbox" name="userLoginId" style="width:80px">
					创建时间: <input class="easyui-datebox" name="userCreateTimeStart" style="width:80px">
					到: <input class="easyui-datebox" name="userCreateTimeEnd" style="width:80px">
					当前状态: 
					<select class="easyui-combobox" name="userState" panelHeight="auto" style="width:100px">
						<option value="5">所有</option>
						<option value="1">启用</option>
						<option value="2">锁定</option>
						<option value="3">被查封</option>
						<option value="4">未激活</option>
					</select>
					<a href="#" class="easyui-linkbutton" iconCls="icon-search" onclick="queryTableInfo()">搜索</a>
					<a href="#" class="easyui-linkbutton" iconCls="icon-redo" onclick="clearQueryForm()">清空条件</a>
					当前条件用户野猪币总和:<span id="sum">正在计算...</span>
				</form>
			</div>
		</div>
		<script type="text/javascript">
			var SITE_GLOBAL_URL = '{$smarty.const.SITE_GLOBAL_URL}';
			var sessionId = '{$smarty.cookies.sessionId}';
		</script>
		<script type="text/javascript">
			{literal}
			//组合显示登录
			function combLogin(val,row){
				return row.userLoginId+'('+row.roleDesc+')';
			}
			
			//状态解释器
			function formatState(val,row){
				switch(val){
					case '1':
						if(row.userIsCenterUser==1){
							return '<span style="color:green;">正常(报单中心)</span>';
						}else{
							return '<span style="color:green;">正常</span>';
						}
						break;
					case '2':
						return '<span style="color:#FF5300;">被锁定</span>';
						break;
					case '3':
						return '<span style="color:#FF5300;">被查封</span>';
						break;
					case '4':
						return '<span style="color:#333333;">未激活</span>';
						break;
					default:
						return '<span style="color:#333333;">-</span>';
						break;
				}
			}
			
			//对每行的操作自定义
			function rowOp(val,row){
				var html = '';
				html += '<a href="#" onclick="updateUserPwd('+row.userId+')">修改密码</a>';
				//如果是启动的就开启锁定按钮和封号按钮
				if(row.userState == 1){
					html += '<a href="#" onclick="lockUser('+row.userId+')">锁定</a>';
					html += '<a href="#" onclick="killUser('+row.userId+')">封号</a>';
					//已经是会员就可以进行充值
					html += '<a href="#" onclick="recharge('+row.userId+')">充值</a>';
				}
				if(row.userState == 2){
					html += '<a href="#" onclick="unlockUser('+row.userId+')">解除锁定</a>';
				}
				
				if(row.userIsCenterUser != 1){
					if(row.userState==4){
						html += '<a href="#" onclick="updateUnMemToMem('+row.userId+')">激活为普通会员</a>';
						html += '<a href="#" onclick="updateUnMemToCenter('+row.userId+')">升级为报单中心</a>';
					}
					if(row.userState==1){
						html += '<a href="#" onclick="updateMemToCenter('+row.userId+')">升级为报单中心</a>';
					}
					
				}
				return html;
			}
			
			//为用户充值
			function recharge(userId){
				//打开充值弹出框
				$('#userRecharge').dialog('open');
				$('#userRechargeForm').form('clear');
				//每次打开要把roleId传入角色菜单弹出框信息里面去
				$('#userRechargeForm input[name="userId"]').val(userId);
			}
			
			//修改用户密码
			function updateUserPwd(userId){
				//打开权限设置弹出框
				$('#updateUserPwd').dialog('open');
				//先清空后加载
				$('#updateUserPwdForm').form('clear');
				//每次打开要把roleId传入角色菜单弹出框信息里面去
				$('#updateUserPwdForm input[name="userId"]').val(userId);
			}
			
			//封号操作
			function killUser(userId){
				$.messager.confirm('提醒', '你是否确认要查封此帐号?一旦查封该帐号不能登录平台且不能再恢复。', function(r){
					if(r){
						$.post('updateUserInfo', { 'userId':userId,'userState':3} ,function(data){
							eval('var dataJson = '+data);
							if(dataJson.result==true){
								$.messager.show({
									title : '提示',
									msg :'您已成功查封该帐号!'
								});
								$('#userTable').datagrid();
							}else{
								$.messager.show({
									title : '提示',
									msg :'操作失败，请重试!'
								});
							}
						});
					}
				});
			}
			//锁定帐号操作
			function lockUser(userId){
				$.messager.confirm('提醒', '你是否确认要锁定该帐号?一旦锁定该帐号，该帐号就只能查看不能操作。', function(r){
					if(r){
						$.post('updateUserInfo', { 'userId':userId,'userState':2} ,function(data){
							eval('var dataJson = '+data);
							if(dataJson.result==true){
								$.messager.show({
									title : '提示',
									msg :'您已成功锁定该帐号!'
								});
								$('#userTable').datagrid();
							}else{
								$.messager.show({
									title : '提示',
									msg :'操作失败，请重试!'
								});
							}
						});
					}
				});
			}
			
			//接触锁定帐号操作
			function unlockUser(userId){
				$.messager.confirm('提醒', '你是否确认要锁定该帐号?一旦锁定该帐号，该帐号就只能查看不能操作。', function(r){
					if(r){
						$.post('updateUserInfo', { 'userId':userId,'userState':1} ,function(data){
							eval('var dataJson = '+data);
							if(dataJson.result==true){
								$.messager.show({
									title : '提示',
									msg :'您已成功解除锁定该帐号!'
								});
								$('#userTable').datagrid();
							}else{
								$.messager.show({
									title : '提示',
									msg :'操作失败，请重试!'
								});
							}
						});
					}
				});
			}
			
			//激活为普通会员
			function updateUnMemToMem(userId){
				$.messager.confirm('提醒', '你是否确认把该用户激活为普通会员，一旦操作不能回退。', function(r){
					if(r){
						$.messager.progress();
						$.post('updateUnMemToMem', { 'userId':userId} ,function(data){
							eval('var dataJson = '+data);
							if(dataJson.result==true){
								$.messager.show({
									title : '提示',
									msg :'您已成功激活了该用户，系统已为该用户升级为会员!'
								});
								$('#userTable').datagrid();
							}else{
								$.messager.show({ 
									title : '提示',
									msg :'操作失败，请重试!'
								});
							}
							$.messager.progress('close');	
						});
					}
				});
			}
			
			//激活为报单中心
			function updateUnMemToCenter(userId){
				$.messager.confirm('提醒', '你是否确认把该用户激活为报单中心，一旦操作不能回退。', function(r){
					if(r){
						$.messager.progress();
						$.post('updateUnMemToCenter', { 'userId':userId} ,function(data){
							eval('var dataJson = '+data);
							if(dataJson.result==true){
								$.messager.show({
									title : '提示',
									msg :'您已成功激活了该用户，系统已为该用户升级为报单中心!'
								});
								$('#userTable').datagrid();
							}else{
								$.messager.show({
									title : '提示',
									msg :'操作失败，请重试!'
								});
							}
							$.messager.progress('close');	
						});
					}
				});
			}
			
			//激活普通会员为报单中心
			function updateMemToCenter(userId){
				$.messager.confirm('提醒', '你是否确认把该会员激活为报单中心，一旦操作不能回退。', function(r){
					if(r){
						$.messager.progress();
						$.post('updateMemToCenter', {'userId':userId} ,function(data){
							eval('var dataJson = '+data);
							if(dataJson.result==true){
								$.messager.show({
									title : '提示',
									msg :'您已成功激活了该会员，系统已为该会员升级为报单中心!'
								});
								$('#userTable').datagrid();
							}else{
								$.messager.show({
									title : '提示',
									msg :'操作失败，请重试!'
								});
							}
							$.messager.progress('close');	
						});
					}
				});
			}
			
			//启动帐号操作
			function startUser(userId){
				$.messager.confirm('提醒', '你是否确认要锁定该帐号?一旦锁定该帐号，该帐号就只能查看不能操作。', function(r){
					if(r){
						$.messager.progress();
						$.post('updateUserInfo', { 'userId':userId,'userState':1} ,function(data){
							eval('var dataJson = '+data);
							if(dataJson.result==true){
								$.messager.show({
									title : '提示',
									msg :'您已成功恢复该帐号的使用权!'
								});
								$('#userTable').datagrid();
							}else{
								$.messager.show({
									title : '提示',
									msg :'操作失败，请重试!'
								});
							}
							$.messager.progress('close');	
						});
					}
				});
			}
			
			//读取性别信息
			function readSex(val,row){
				switch(val){
					case '1':
						return '男';
					case '2':
						return '女';
					case '3':
						return '保密';
					default:
						return '-';
				}
				return '-';
			}
			
			//设置用户菜单权限
			function setAuthorityForUser(userId){
				//打开权限设置弹出框
				$('#setUserMenuJuris').dialog('open');
				//每次打开要把roleId传入角色菜单弹出框信息里面去
				$('#setUserMenuJuris input[name="userId"]').val(userId);
				var setting = {
					check: {
						enable: true
					},
					data: {
						simpleData: {
							enable: true
						}
					}
				};
				$.post('queryMenusByUserId',{'userId':userId},function(data){
					eval('var dataJson = '+data);
					zNodes = dataJson.userMenus;
					
					zTreeNode = $.fn.zTree.init($("#jurisUserMenuTree"), setting, zNodes);
					zTreeNode.expandAll(true);
					var zTree = $.fn.zTree.getZTreeObj("jurisUserMenuTree");
					zTree.setting.check.chkboxType = { "Y":"ps", "N":"ps"};
				});
			}
			
			//设置用户角色信息
			function setUserRole(userId){
				//打开权限设置弹出框
				$('#setUserRole').dialog('open');
				//每次打开要把roleId传入角色菜单弹出框信息里面去
				$('#setUserRole input[name="userId"]').val(userId);
				var setting = {
					check: {
						enable: true
					},
					data: {
						simpleData: {
							enable: true
						}
					}
				};
				$.post('queryRoles',{'userId':userId},function(data){
					eval('var dataJson = '+data);
					zNodes = dataJson.roles;
					
					zTreeNode = $.fn.zTree.init($("#userRoleMenuTree"), setting, zNodes);
					zTreeNode.expandAll(true);
					var zTree = $.fn.zTree.getZTreeObj("userRoleMenuTree");
					zTree.setting.check.chkboxType = { "Y":"ps", "N":"ps"};
				});
			}
			
			//编辑用户信息
			function updateUserInfo(userId){	
				//打开权限设置弹出框
				$('#updateUser').dialog('open');
				//先清空后加载
				$('#updateUserForm').form('clear');
				//每次打开要把roleId传入角色菜单弹出框信息里面去
				$('#updateUserForm input[name="userId"]').val(userId);
				$.post('getUserById', { 'userId':userId } ,function(data){
					eval('var dataJson = '+data);
					if(dataJson.userInfo.photoNoExtUrl)
						var img = $('<img src="'+SITE_GLOBAL_URL+dataJson.userInfo.photoNoExtUrl+"_100x100."+dataJson.userInfo.photoExt+'"/>')
					$('#showUpdateUserPhoto').empty();
					$('#showUpdateUserPhoto').append(img);
					$('#updateUserForm').form('load', dataJson.userInfo);
					$("#uploadUpdateAvater").uploadify({
						'height': 20,
						'fileObjName': 'files',
						'multi': false,
						'formData': {'albumId':3,'photoIsOffic':1,'photoType':4,'sessionId':sessionId},
						'buttonText': '　　上传头像',
						'buttonClass': 'uploadAvaterBtn icon-image',
						'swf': SITE_GLOBAL_URL + '/plug/uploadify/uploadify.swf',
						'uploader': SITE_GLOBAL_URL + '/manage/album/album/uploadAlbum',
						'width': 80,
						'onUploadSuccess': function (file, data, response) {
							data = $.parseJSON(data);
							if (response) {
								if (data.state == 'SUCCESS') {
									$('#showUpdateUserPhoto').empty();
									if(data.photoNoExtUrl){
										var img = $('<img src="'+data.photoNoExtUrl + "_100x100." + data.fileExt+'"/>');
										$('#showUpdateUserPhoto').append(img);
										$('#updateUserForm input[name="userAvatarId"]').val(data.photoId);
									}
								} else {
									$.alertDialog(data.message);
								}
							} else {
								$.alertDialog("发生网络错误");
							}
						}
					});
				});
			}
			
			var moneySum = function(param){
				$("#sum").text("正在计算中...");
				$.post("queryMoneySum",param || {},function(data){
					$("#sum").text(data.result.moneySum || 0);
				},'json');
			}
			moneySum();
			
			//带条件查询信息
			function queryTableInfo(){
				var param = {
						userLoginId:$('#queryTableInfo input[name="userLoginId"]').val(),
						userCreateTimeStart:$('#queryTableInfo input[name="userCreateTimeStart"]').val(),
						userCreateTimeEnd:$('#queryTableInfo input[name="userCreateTimeEnd"]').val(),
						userState:$('#queryTableInfo input[name="userState"]').val()
			        };
				$("#userTable").datagrid("load", param);
				moneySum(param);
			}
			
			//清空条件
			function clearQueryForm(){
				$('#queryTableInfo').form('clear');
			}
			
			$(function(){
				var pager = $('#userTable').datagrid({
					method: 'POST',
					loadMsg: '数据加载中,请稍候...',
					pagination: true,   
					pageSize: 15,//每页显示的记录条数，默认为10 
					pageList: [15, 30, 45]//可以设置每页记录条数的列表  
				}).datagrid('getPager');	// get the pager of datagrid
				pager.pagination({
					pageSize: 15,//每页显示的记录条数，默认为20
					pageList: [15,30,45] //可以设置每页记录条数的列表 
				});			
			})
			{/literal}
		</script>
    </body>
</html>
